/*
 * Application\Inc\Library\LSM303DLH.h
 *
 * LSM303DLH function
 *
 * Author: Fenris Liang
 * Copyright (c) 2010
 * All rights reserved.
 *
 * Modifications:
 * 2010/12/08 Fenris Liang first implemetation
 *
 * $Id: LSM303DLH.h 2010-12-08 15:31:53 Fenris Liang $
 */
#ifndef __LSM303DLH_H_
#define __LSM303DLH_H_

#ifdef  __cplusplus
extern "C" {
#endif		/* __cplusplus */

extern int LSM303DLH_Init(void);
extern void LSM303DLH_GET_XYZ_A(short *arg);
extern void LSM303DLH_INT1_SOURCE_A(char *arg);
extern void LSM303DLH_INT2_SOURCE_A(char *arg);
extern void LSM303DLH_GET_EVENT_A(char *arg);
extern void LSM303DLH_Sleep(void);
extern void LSM303DLH_Wakeup(void);

extern void LSM303DLH_GET_XYZ_M(short *arg);

//fenris 20110126
void LSM303DLH_M_Set(int idx);
void LSM303DLH_M_Reset(int idx);
void LSM303DLH_M_Normal(int idx);

//fenris 20110209
void LSM303LH_M_Self_Test_Set(int idx);
void LSM303LH_M_Self_Test_Reset(void);

//void LSM303DLH_Task(void);
void Get_LSM303DLH_Data(void);
extern double lsm303_M[3];
extern double lsm303_A[3];
void LSM303DLH_GET_XYZ_M(short *arg);
void LSM303DLH_GET_XYZ_A(short *arg);


#ifdef __cplusplus
}
#endif	/* __cplusplus */
#endif	/* __LSM303DLH_H_ */